Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add uts for setProviderID #2144

Merged
merged 1 commit into from
Feb 5, 2025

Conversation

arshadd-b
Copy link
Contributor

@arshadd-b arshadd-b commented Jan 24, 2025

What this PR does / why we need it:
This PR refactor the code to parse token and get accountID and adds the coverage for setProviderID function
Which issue(s) this PR fixes (optional, in fixes #<issue number>(, fixes #<issue_number>, ...) format, will close the issue(s) when PR gets merged):
Fixes # #2128

Special notes for your reviewer:

/area provider/ibmcloud

  1. Please confirm that if this PR changes any image versions, then that's the sole change this PR makes.

Release note:

Add uts for setProviderID

@k8s-ci-robot k8s-ci-robot added area/provider/ibmcloud Issues or PRs related to ibmcloud provider cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Jan 24, 2025
@k8s-ci-robot
Copy link
Contributor

Hi @arshadd-b. Thanks for your PR.

I'm waiting for a kubernetes-sigs member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work. Regular contributors should join the org to skip this step.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

@k8s-ci-robot k8s-ci-robot added the size/L Denotes a PR that changes 100-499 lines, ignoring generated files. label Jan 24, 2025
Copy link

netlify bot commented Jan 24, 2025

Deploy Preview for kubernetes-sigs-cluster-api-ibmcloud ready!

Name Link
🔨 Latest commit 4618af3
🔍 Latest deploy log https://app.netlify.com/sites/kubernetes-sigs-cluster-api-ibmcloud/deploys/67a1b86ff0bdad0008d667e5
😎 Deploy Preview https://deploy-preview-2144--kubernetes-sigs-cluster-api-ibmcloud.netlify.app
📱 Preview on mobile
Toggle QR Code...

QR Code

Use your smartphone camera to open QR code link.

To edit notification comments on pull requests, go to your Netlify site configuration.

@Karthik-K-N
Copy link
Contributor

/ok-to-test

@k8s-ci-robot k8s-ci-robot added ok-to-test Indicates a non-member PR verified by an org member that is safe to test. and removed needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. labels Jan 24, 2025
@Karthik-K-N
Copy link
Contributor

@Prajyot-Parab ^^

@Prajyot-Parab
Copy link
Contributor

/hold lets get #2122 merged first
meanwhile will review this PR

@k8s-ci-robot k8s-ci-robot added the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Jan 24, 2025
@Prajyot-Parab
Copy link
Contributor

@arshadd-b I think we should split the changes in 2 different commits as it will be easier to interpret.

  1. refactor jwt parser code
  2. add uts for setProviderID

@Karthik-K-N your thoughts?

@Karthik-K-N
Copy link
Contributor

@arshadd-b I think we should split the changes in 2 different commits as it will be easier to interpret.

1. refactor jwt parser code

2. add uts for setProviderID

@Karthik-K-N your thoughts?

Yeah, That would be better

@@ -55,10 +56,10 @@ func GetAccount(auth core.Authenticator) (string, error) {
}

// GetAccountID will parse and returns user cloud account ID.
func GetAccountID() (string, error) {
func GetAccountID(jwtParser parser.TokenParser) (string, error) {
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what is the need of jwtParser here?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since I had moved parse function inside interface
https://github.com/kubernetes-sigs/cluster-api-provider-ibmcloud/pull/2144/files

and the parse function is getting called inside GetAccount
https://github.com/kubernetes-sigs/cluster-api-provider-ibmcloud/pull/2144/files#diff-a960905eb0377bfa049fe778fde22a865ac59996edf731549f105b8808c262ffR48

GetAccount is getting called inside the GetAccountID https://github.com/kubernetes-sigs/cluster-api-provider-ibmcloud/pull/2144/files#diff-a960905eb0377bfa049fe778fde22a865ac59996edf731549f105b8808c262ffR64
So I had to pass the interface object down the functions

But I think these changes won't be needed because with @Prajyot-Parab changes GetAccountID is exported via variable https://github.com/kubernetes-sigs/cluster-api-provider-ibmcloud/pull/2122/files#diff-a960905eb0377bfa049fe778fde22a865ac59996edf731549f105b8808c262ffR58

So we can override the variable in the test cases

@arshadd-b
Copy link
Contributor Author

Will wait for PR #2122 to be merged , then this PR needs to be refactor accordingly.

@Prajyot-Parab
Copy link
Contributor

Will wait for PR #2122 to be merged , then this PR needs to be refactor accordingly.

#2122 is now merged.

@k8s-ci-robot k8s-ci-robot added the needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. label Jan 28, 2025
@arshadd-b
Copy link
Contributor Author

#2122 is now merged.

Thanks @Prajyot-Parab , will refactor this PR accordingly

@arshadd-b arshadd-b force-pushed the refactor-token-parser branch from 87ac1eb to ac3738c Compare February 3, 2025 06:50
@k8s-ci-robot k8s-ci-robot added size/M Denotes a PR that changes 30-99 lines, ignoring generated files. and removed needs-rebase Indicates a PR cannot be merged because it has merge conflicts with HEAD. size/L Denotes a PR that changes 100-499 lines, ignoring generated files. labels Feb 3, 2025
@arshadd-b arshadd-b force-pushed the refactor-token-parser branch from ac3738c to b599c52 Compare February 3, 2025 06:58
@k8s-ci-robot k8s-ci-robot added size/S Denotes a PR that changes 10-29 lines, ignoring generated files. and removed size/M Denotes a PR that changes 30-99 lines, ignoring generated files. labels Feb 3, 2025
@arshadd-b arshadd-b force-pushed the refactor-token-parser branch from b599c52 to 6675e8e Compare February 3, 2025 07:00
@arshadd-b arshadd-b changed the title refactor jwt parser code and add uts for setProviderID Add uts for setProviderID Feb 3, 2025
@arshadd-b arshadd-b force-pushed the refactor-token-parser branch from 6675e8e to 4618af3 Compare February 4, 2025 06:49
@arshadd-b arshadd-b requested a review from Karthik-K-N February 4, 2025 06:49
@Prajyot-Parab
Copy link
Contributor

lgtm
hold on @Karthik-K-N

Copy link
Contributor

@Karthik-K-N Karthik-K-N left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/lgtm

@k8s-ci-robot k8s-ci-robot added the lgtm "Looks good to me", indicates that a PR is ready to be merged. label Feb 4, 2025
Copy link
Member

@mkumatag mkumatag left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

/lgtm

@k8s-ci-robot
Copy link
Contributor

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: arshadd-b, mkumatag

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@k8s-ci-robot k8s-ci-robot added the approved Indicates a PR has been approved by an approver from all required OWNERS files. label Feb 5, 2025
@mkumatag
Copy link
Member

mkumatag commented Feb 5, 2025

/unhold

@k8s-ci-robot k8s-ci-robot removed the do-not-merge/hold Indicates that a PR should not merge because someone has issued a /hold command. label Feb 5, 2025
@k8s-ci-robot k8s-ci-robot merged commit c6b2def into kubernetes-sigs:main Feb 5, 2025
13 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved Indicates a PR has been approved by an approver from all required OWNERS files. area/provider/ibmcloud Issues or PRs related to ibmcloud provider cncf-cla: yes Indicates the PR's author has signed the CNCF CLA. lgtm "Looks good to me", indicates that a PR is ready to be merged. ok-to-test Indicates a non-member PR verified by an org member that is safe to test. size/S Denotes a PR that changes 10-29 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants